#include<stdio.h>
#include<unistd.h>
#include<signal.h>
void timeout(int sig)
{
	if(sig==SIGALRM)
		puts("Time out!");
	alarm(2);
}
void keycontrol(int sig)
{
	if(sig==SIGINT)
		puts("CTRL+C pressed");
}
int main(int argc,char *argv[])
{
	int i;
	//void (*signal(int signo,void(*func)(int)))(int);
	//为了在产生信号时调用，返回之前注册的函数指针
	signal(SIGALRM,timeout);
	signal(SIGINT,keycontrol);
	//unsigned int alarm((unsigned int seconds)
	//返回0或以秒为单位的距SIGALRM信号发生所剩时间
	alarm(2);
	for(i=0;i<3;i++)
	{
		puts("wait...");
		sleep(100);
	}
	return 0;
}
